package remotos;

import integracion.converters.EnvioVentaXmlConverter;
import integracion.converters.ErrorEnXmlException;
import integracion.converters.entidades.Resultado;

import java.rmi.RemoteException;

import javax.xml.rpc.ServiceException;

import org.apache.log4j.Logger;

import portal.vo.CompraVO;
import webservice.LogisticaMonitoreoBeanServiceLocator;
import webservice.LogisticaMonitoreoWS;


public class ComprasLogistica {
	
	private static Logger logger = Logger.getLogger(ComprasLogistica.class);
	
	
	
	public Resultado enviarCompraALogistica(CompraVO vo) {
		String respuesta = "";
		String xml;
		EnvioVentaXmlConverter converter = new EnvioVentaXmlConverter();
		try {
			xml = converter.getXml(vo);
			System.out.println("::::::::::::::::.XML: " + xml);
			LogisticaMonitoreoWS port = new LogisticaMonitoreoBeanServiceLocator().getLogisticaMonitoreoWSPort();
			respuesta = port.informarVenta(xml);
		} catch (ErrorEnXmlException e1) {
			logger.error("Error al crear el xml de envio de compra a Logistica.");
			logger.error(e1);
		} catch (ServiceException e2) {			
			logger.error("Error en la llamada a WebService .");
			logger.error(e2);			
		} catch (RemoteException e3) {			
			logger.error("Error en la llamada a WebService .");
			logger.error(e3);
			
		}
		
		Resultado resultado = converter.getResultado(respuesta);
		return resultado;
	}


}
